Алгоритм розв`язання задач

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Зміст

Введення

1 Алгоритм рішення функціональної завдання

2 Вибір системи команд спеціалізованої ЕОМ

3 Формати команд та операндів

4 Змістовні графи мікропрограм операцій АЛП

5 Розробка об'єднаної мікропрограми роботи АЛП

6 Закодовані алгоритми мікропрограм

7 Проектування керуючого автомата

Введення

Метою курсового проектування є закріплення знань з курсу: «Організація ЕОМ і систем», отриманих в результаті вивчення лекційного курсу і виконання лабораторного практикуму.

Об'єктом курсового проектування є процесор спеціалізованої ЕОМ.

У процесорі виділяють пристрій, в якому виконуються всі основні (арифметичні та логічні) операції. Це пристрій називають арифметико-логічним пристроєм (АЛП). Якщо всі основні операції виконуються за один такт (це має місце в більшості сучасних мікропроцесорів), АЛП є частиною операційного автомата процесора, якщо ж деякі або всі основні операції виконуються алгоритмічно за багато тактів, АЛУ має власний пристрій управління.

Розробка процесора спеціалізованої ЕОМ включає в себе наступні етапи:

  • Розробка алгоритму рішення функціональної задачі.

  • Вибір системи команд спеціалізованої ЕОМ.

  • Визначення форматів команд та операндів.

  • Розробка алгоритмів мікропрограм виконання мінімально необхідного набору операцій АЛП.

  • Розробка об'єднаної мікропрограми роботи АЛП.

  • Розробка структурної схеми операційного автомата АЛП.

  • Розробка управляючого автомата АЛП.

1 Алгоритм рішення функціональної завдання

Укрупнений алгоритм розв'язання поставленої задачі представлений на малюнку 1.1. Алгоритм обчислення функцій F наведено з огляду на малюнку 1.2.

Рис.1.1 Укрупнений алгоритм

Для обчислення функції F можна скористатися статечним рядом:

Функція Arth (x) розкладається [3] в степеневий ряд:

Цей ряд збігається при | x | <1, . Суму ряду зручно знаходити за допомогою рекурентних співвідношень. Загальний член ряду виражається в даному випадку через попередній член ряду за допомогою рівності:


2 Вибір системи команд спеціалізованої ЕОМ

Для двохадресна системи команд без ознаки засилання основні операції над двома операндами будуть виглядати так:

,

де

А 1 - перша адреса в команді;

А 2 - другий адреса в команді;

* - Позначення операції.

Введемо позначення:

N. Найменування операції. X. Y

X - перший операнд і результат операції.

Y - другий операнд (якщо він не бере участь, то ставиться -).

Для двохадресна системи команд без ознаки засилання програма буде виглядати так:

Частина команд у цій програмі мають дві адреси, а частина - одна адреса, тому й система команд ЕОМ повинна складатися з одноадресних і двохадресна команд.

3 Формати команд та операндів

Будемо вважати, що оперативна пам'ять (ОП) складається з 256 осередків довжиною в один байт кожна.

Двохадресна система команд без ознаки засилання містить 13 різних найменувань команд, для кодування яких поле КО повинно мати 4 розряду.

Оскільки в даному випадку маються одноадресних команди і двохадресна команди, для їх відмінності введено однорозрядною поле коду довжини команди (КДК) та прийнято вважати: КДК = 1 - для одноадресних і КДК = 0 - для двохадресна команд.

Розряди 5-7 першого байта всіх команд тут не використовуються. Формат команд наведено на малюнку 3.1.

В якості операнда буде використовуватися 16-розрядне слово, кома вважається фіксованою перед старшим розрядом, а ВП оперує з однобайтові словами. Формат операнда у ВП представлений на малюнку 3.2:

Такий операнд завантажується за два звернення до ОП, тут старші розряди операнди і знак містяться в першому байті, а молодші розряди - у другому.

4 Змістовні графи мікропрограм операцій АЛП

Числа представляються в 16-розрядному форматі, старший (нульовий) розряд використовується для представлення знака числа, для операції додавання використовується модифікований додатковий код, тому регістр RG має 17 розрядів (0:16) (поле RG (1:16) - для зберігання перших доданка), регістр RG1 має 16 розрядів RG1 (0:15) - для другого доданка, однорозрядною полю ознаки переповнення спочатку присвоєно нульове значення, при операції складання складові поміщаються по молодшим розрядам, результат (сума) міститься в полі RG (1:16) , додаток константи означає додаток 1 до молодшого розряду слова.

Змістовний алгоритм складання представлений на малюнку 4.1:

Малюнок 4.1 - Алгоритм операції додавання

Опис слів, використаних вбудованого складання, представлені в таблиці 4.1:

Таблиця 4.1

Тип

Слово

Пояснення

ILO

RG (0:16)

Доданок (Сума)

IL

RG1 (0:16)

Доданок

ILO

ПП

Ознака переповнення

Змістовний алгоритм вирахування представлений на малюнку 4.2:

Малюнок 4.2 - Алгоритм віднімання

Опис слів, використаних вбудованого вирахування представлені в таблиці 4.2:

Таблиця 4.2

Тип

Слово

Пояснення

ILO

RG (0:16)

Зменшуване (різницю)

IL

RG1 (0:16)

Від'ємник

ILO

ПП

Ознака переповнення

Змістовний алгоритми множення і ділення представлені на малюнках 4.3 і 4.4:

Описи слів, використаних у мікропрограма представлені в таблицях 4.3 та 4.4:

Таблиця 4.3

Тип

Слово

Пояснення

ILO

RG (0:16)

Множник, твір

IL

RG1 (0:16)

Множимое

L

RG2 (0:16)

Множник, твір

L

СТ (1:4)

Лічильник циклів

Таблиця 4.4

Тип

Слово

Пояснення

ILO

RG (0:16)

Ділене, залишок, приватне

IL

RG1 (0:16)

Дільник

L

RG2 (0:16)

Приватне

L

СТ (1:4)

Лічильник

ILO

ПП

Ознака переповнення

Змістовні алгоритми множення на 2 і знаходження абсолютної величини числа представлені на малюнку 4.5 та 4.6, а опису слів, використаних у мікропрограма - у таблиці 4.5 та 4.6:

Малюнок 4.5 - Алгоритм операції «множення на 2»

Малюнок 4.6 - Алгоритм приведення абсолютної величини числа

Таблиця 4.5

Тип

Слово

Пояснення

ILO

RG (2:16)

Операнд

ILO

ПП

Ознака переповнення

Таблиця 4.6

Тип

Слово

Пояснення

ILO

RG (0:1)

Операнд

Змістовний алгоритм мікропрограми спеціальної функції Arth (x) представлений на малюнку 4.7, тут до початку виконання програми регістру RG4 присвоюється значення X. Описи слів, використаних у мікропрограмі - у таблиці 4.7:

Таблиця 4.7

Тип

Слово

Пояснення

ILO

RG (0:16)

Змінна x, n, b, a, F множник, твір, ділене,

залишок, приватне, доданок, сума,

зменшуване, різниця

IL

RG1 (0:15)

Змінна F, b, a

константа,

Множимое, дільник, доданок, від'ємник

L

RG2 (0:16)

Множник, твір, приватне

L

RG3 (0:15)

Змінна F

L

RG4 (0:15)

Змінна x, a, b

L

RG5 (0:15)

Змінна n

L

CT (1:4)

Лічильник

ILO

ПП

Ознака переповнення

Тепер необхідно скласти схему укрупненого алгоритму, використовуючи вже отриману мікропрограму обчислення функції Arth (x). Передбачається, що змінні x1, x2 і x3 перед початком виконання програми вже будуть завантажені відповідно до регістрів RG4, RG3 і RG5. Дана схема алгоритму представлена ​​на малюнку 4.8:

Малюнок 4.8 - Схема алгоритму

У таблиці 4.8 представлено опис слів, використаних у програмі. Так як опис слів для мікропрограм обчислення спеціальної функції було представлено у таблиці 4.7, тут наводиться опис тільки тих слів, які брали значення відмінні від тих, що використовувалися в алгоритмі на малюнку 4.7.

Таблиця 4.8

Тип

Слово

Пояснення

ILO

RG (0:16)

Змінна x1, x2, X ділене,

залишок, приватне,

зменшуване, різниця

абсолютна величина числа

IL

RG1 (0:15)

Змінна x2, x3

константа, дільник, від'ємник

L

RG3 (0:15)

Змінна x2

L

RG4 (0:15)

Змінна x1, X

L

RG5 (0:15)

Змінна x3

5 Розробка об'єднаної мікропрограми роботи АЛП

Процесор складається з АЛП і УЦУ.

У об'єднаному списку мікрооперацій, що використовуються в мікропрограма мінімального набору операцій АЛУ, для уніфікації форми запису різних операцій і форматів однойменних слів випливає в порівнянні з малюнком 4.3 змінити три мікрооперації:

Завдяки цим змінам значення числової частини результату кожної операції присвоюється полю RG (2:16) слова RG, ​​а нульовий і перший розряди цього слова використовуються для представлення знака числа. З'являється можливість вважати, що перед початком кожної операції над двома операндами в АЛП значення першого операнда присвоюється полю RG (1:16) слова RG, ​​а значення другого операнда - слову RG1. При виконанні цієї умови перед початком додавання і віднімання необхідно зробити присвоювання RG (0): = RG (1), перед початком множення потрібно здійснити передачу RG2: = RG (1:16) .0, а перед поділом - мікрооперації RG2 (0) : = RG (1) і RG (0:1): = 00.

У таблиці 5.1 наведено список логічних умов, використовуваних в мікропрограми:

Таблиця 5.1

Позначення

Лог. Умова

Тип операції

X1

RG (0)

Додавання і

Віднімання

X2

RG1 (0)


X3

RG (1)


X4

RG2 (15)

Множення

X5

CT = 0


X6

RG2 (1)


X7

RG1 (0) Å RG2 (0)

Розподіл

X8

RG2 (16)

Множення на «2»

X9

RG (2)

Обчислення функції Arth (x)

X10

RG (0:16)


У таблиці 5.2 наведено список мікрооперацій, що використовуються в мікропрограми:

Таблиця 5.2

Мікрооперації

Тип операції

Y1

RG (0): = RG (1)

Додавання

Y2

RG (2:16): = ù RG (2:16) +


Y3

RG: = RG + RG1 (1:15)


Y4

RG: = RG +11. Ù RG1 (1:15) +


Y5

ПП: = 1


Y6

RG1 (0): = ù RG1 (0)

Віднімання

Y7

RG2: = RG (1:16) .0

Множення

Y8

RG: = 0


Y9

CT: = 1510


Y10

RG2 (1:16): = R1 (RG (16). RG2 (1:16))


Y11

RG (1:16): = R1 (0.RG (1:16))


Y12

CT: = CT-1


Y13

RG: = RG +


Y14

RG (0:1): = 11


Y15

RG2 (0): = RG (1)

Розподіл

Y16

RG (2:16): = L1 (RG (2:16) .0)


Y17

CT: = 0


Y18

RG2 (1:16): = 0


Y19

RG2 (1:16): = L1 (RG2 (1:16). Ù RG (0))


Y20

RG: = RG2 (1:15)


Y21

RG (0:1): = 00

Виділення абсолютної величини числа

Y22

RG3: = RG4

Обчислення функції Arth (x)

Y23

RG5: =


Y24

RG: = RG4


Y25

RG1: = RG


Y26

RG4: = RG


Y27

RG: = RG5


Y28

RG4: = RG1


Y29

RG1: =


Y30

RG5: = RG5 +


Y31

RG: = RG3



У додатках 1, 2 і 3 наведено відповідно схема об'єднаної мікропрограми роботи АЛП, закодована схема об'єднаної мікропрограми роботи АЛП та структурну схему операційного автомата.

6 Закодовані алгоритми мікропрограм

Закодовані алгоритми складання, віднімання, множення, ділення, множення на «2» і виділення абсолютної величини числа представлені відповідно на малюнках 6.1, 6.2, 6.3, 6.4, 6.5 та 6.6:

7 Проектування керуючого автомата

Формат мікрокоманд при вертикальному кодуванні має формат, представлений на малюнку 7.1:

Формат команди з примусовою адресацією представлений на малюнку 7.2:

Алгоритми формування виконавчого адреси звернення до мікропрограмного пам'яті (МПП) представлений на малюнку 7.3:

Малюнок 7.3 - Алгоритм формування адреси

У таблиці 7.1 приведені всі мікрооперації, розташовані в мікропрограмного пам'яті, де адреса A0 - перехід по «істина»:

Таблиця 7.1

Логічеcкій адресу МК в МПП

Формат мікрокоманд


Операційна зона

Адресна зона


Y

X (1 .. l)

A0

A1

0

Y0


1


1

Y31


2


2

Y33


3


3

Y15


4


4

Y21


5


5

Y4


6


6


X1

23

7

7

Y16




8

Y9


9


9

Y18


10


10


X1

12

11

11

Y4


13


12

Y3


13


13

Y19


14


14

Y16


15


15

Y12


16


16


X5

17

10

17

Y20


18


18


X8

19

20

19

Y13




20


X7

22

21

21

Y21


24


22

Y14


24


23

Y5


24


24

Y25


25


25

Y24


26


26

Y6


27


27

Y1


28


28


X1

29

30

29

Y2


30


30


X2

32

31

31

Y3


33


32

Y4


33


33


X1

35

34

34


X2

36

38

35


X2

37

36

36

Y5


38


37

Y2


38


38

Y26


39


39

Y21


40


40

Y34


41


41

Y6


42


42

Y1


43


43


X1

44

45

44

Y2


45


45


X2

47

46

46

Y3


48


47

Y4


48


48


X1

50

49

49


X2

51

53

50


X2

52

51

51

Y5


53


52

Y2


53


53


X1

0

54

54

Y22


55


55

Y23


56


56

Y24


57


57

Y25


58


58

Y7


59


59

Y8


60


60

Y9


61


61


X4

62

63

62

Y3


63


63

Y10


64


64

Y11


65


65

Y12


66


66


X5

67

61

67


X6

68

69

68

Y13


69


69


X7

70

71

70

Y14


71


71

Y26


72


72

Y27


73


73


X9

75

74

74

Y16


76


75

Y5


76


76

Y6


77


77

Y1


78


78


X1

79

80

79

Y2


80


80


X2

82

81

81

Y3


83


82

Y4


83


83


X1

85

84

84


X2

86

88

85


X2

87

86

86

Y5


88


87

Y2


88


88

Y25


89


89

Y24


90


90

Y28


91


91

Y7


92


92

Y8


93


93

Y9


94


94


X4

95

96

95

Y3


96


96

Y10


97


97

Y11


98


98

Y12


99


99


X5

100

94

100


X6

101

102

101

Y13


102


102


X7

103

104

103

Y14


104


104

Y25


105


105

Y24


106


106

Y28


107


107

Y29


108


108

Y1


109


109


X1

110

111

110

Y2


111


111


X2

113

112

112

Y3


114


113

Y4


114


114


X1

116

115

115


X2

117

38

116


X2

118

117

117

Y5


119


118

Y2


119


119

Y25


120


120

Y24


121


121


X10

122

158

122

Y15


123


123

Y21


124


124

Y4


125


125


X1

142

126

126

Y16


127


127

Y9


128


128

Y18


129


129


X1

131

130

130

Y4


132


131

Y3


132


132

Y19


133


133

Y16


134


134

Y12


135


135


X5

136

129

136

Y20


137


137


X8

138

139

138

Y13


139


139


X7

141

140

140

Y21


143


141

Y14


143


142

Y5


143


143

Y30


144


144

Y31


145


145

Y32


146


146

Y1


147


147


X1

148

149

148

Y2


149


149


X2

150

151

150

Y3


152


151

Y4


152


152


X1

154

153

153


X2

155

157

154


X2

156

155

155

Y5


157


156

Y2


157


157



71


158

Y0





Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Курсова
137кб. | скачати


Схожі роботи:
Методи розв`язання задач
Алгоритми чисельного розв`язання задач
Приклади розв`язання задач з програмування
Приклади розв`язання задач з правознавства
Графічне розв язання задач у ІІ класі
Методи розв`язання задач з фізики
Приклади розв`язання задач з реакцій електролізу
Приклади розв`язання задач з кримінального процесу
Про графічний спосіб розв язання математичних задач
© Усі права захищені
написати до нас